This application is based upon and claims the benefit of priority from the prior Japanese Patent Application PH2000-280832, filed on Sep. 14, 2000; the entire contents of which are incorporated herein by reference.
The present invention relates to an image filter processing apparatus and method for effectively executing a post filter processing for an image.
Post filter processing is a filter processing for an image after some processing is executed for the image. For example, after a dynamic image is decoded, post filter processing reduces noise caused by compression in case of coding the dynamic image. Especially, in image coding methods using DCT (Discrete Cosine Transformation) such as MPEG method, block noise is generated because of coding by unit of block, and mosquito noise as quasi-high frequency element is generated because of quantization. Furthermore, a high frequency element is lost by quantization in case of coding. As a result, an edge part in an image becomes dull and the image blurs.
In order to improve these defects, in general, the post filter processing is adaptively executed based on characteristics of the image. However, in typical post filter processing, the filter processing is executed pixel-by-pixel on the image, and a large calculation quantity is necessary. For example, in case of CIF format used for xe2x80x9cITU-TH.261, H.263, ISO/IEC MPEG-4xe2x80x9d, as for luminance signal on the image, xe2x80x9c352xe2x80x9d pixels along a horizontal line and xe2x80x9c288xe2x80x9d pixels along a vertical line are included, and the filter processing must be executed for a total of xe2x80x9c101, 376xe2x80x9d pixels. If such processing of large calculation quantity is performed by software, the real time processing becomes difficult. If it is performed by hardware, the cost becomes expensive.
On the other hand, in case of size conversion of coded image, a size conversion method using a filter after decoding and a size conversion method using conversion coefficients such as DCT coefficient, are well known. In both methods, if the size of an image including a coded noise is converted, the coded noise is also expanded by the size conversion processing. Accordingly, even if the post filter processing is executed after size conversion, the coded noise remains in the image. Furthermore, if the size conversion processing is executed after the post filter processing, in case of magnification, the image becomes blurred. In case of reduction, an aliasing is generated, by sharpening processing.
As mentioned-above, in the post filter processing of the prior art, the filter processing is executed pixel-by-pixel on the image. Accordingly, a large calculation quantity is necessary. Furthermore, in the size conversion processing of the image, in case of size conversion of coded image, the post filter processing cannot be effectively executed for the encoded image.
It is an object of the present invention to provide an image filter processing apparatus and method for simultaneously executing a noise reduction filter processing and a sharpening filter processing for the image by small calculation quantity.
According to an aspect of the present invention, there is provided an image filter processing apparatus, comprising: a memory configured to temporarily store an output value as a filter processing result; a first calculator configured to calculate a difference between an input value of image signal and the output value stored in said memory, the output value being the filter processing result of a previous input value by one unit time; a lookup table configured to respectively store a plurality of difference values and a change value, and to output the change value corresponding to the difference calculated by said first calculator, the change value being a product of the difference and a value which is above xe2x80x9c0xe2x80x9d and below xe2x80x9c1xe2x80x9d if an absolute value of the difference is below a threshold, and the change value being a product of the difference and a value which is above xe2x80x9cxe2x88x921xe2x80x9d and below xe2x80x9c0xe2x80x9d if the absolute value is above the threshold; and a second calculator configured to output a difference between the input value and the change value, an output value as the difference being newly stored in said memory.
Further in accordance with another aspect of the present invention, there is also provided an image filter processing method, comprising: temporarily storing an output value as a filter processing result in a memory; calculating a difference between an input value of image signal and the output value stored in the memory, the output value being the filter processing result of a previous input value by one unit time; outputting a change value corresponding to the difference, the change value being a product of the difference and a value which is above xe2x80x9c0xe2x80x9d and below xe2x80x9c1xe2x80x9d if an absolute value of the difference is below a threshold, and the change value being a product of the difference and a value which is above xe2x80x9cxe2x88x921xe2x80x9d and below xe2x80x9c0xe2x80x9d if the absolute value is above the threshold; and outputting a difference between the input value and the change value, the output value as the difference being newly stored in the memory.
Further in accordance with another aspect of the present invention, there is also provided an image processing apparatus, a noise reduction filter processing unit configured to execute a noise reduction filter processing for input image signal; a size conversion processing unit configured to execute a size conversion processing for image signal output from said noise reduction filter processing unit; and a sharpening filter processing unit configured to execute a sharpening filter processing for image signal output from said size conversion processing unit; wherein said noise reduction filter processing unit including: a memory configured to temporarily store an output value as the noise reduction filter processing result; a first calculator configured to calculate a difference between an input value of the image signal and the output value stored in said memory, the output value being the noise reduction filter processing result of a previous input value by one unit time; a lookup table configured to respectively store a plurality of difference values and a change value, and to output the change value corresponding to the difference calculated by said first calculator, the change value being a product of the difference and a value which is above xe2x80x9c0xe2x80x9d and below xe2x80x9c1xe2x80x9d if an absolute value of the difference is below a threshold; and a second calculator configured to output a difference between the input value and the change value, an output value as the difference being newly stored in said memory; wherein said sharpening filter processing unit including: a memory configured to temporarily store an output value as a sharpening filter processing result; a first calculator configured to calculate a difference between an input value of image signal and the output value stored in said memory, the output value being the sharpening filter processing result of a previous input value by one unit time; a lookup table configured to respectively store a plurality of difference values and a change value, and to output the change value corresponding to the difference calculated by said first calculator, the change value being a product of the difference and a value which is above xe2x80x9cxe2x88x921xe2x80x9d and below xe2x80x9c0xe2x80x9d if an absolute value of the difference is above a threshold; and a second calculator configured to output a difference between the input value and the change value, an output value as the difference being newly stored in said memory.
Further in accordance with another aspect of the present invention, there is also provided an image processing method, comprising: executing a noise reduction filter processing for input image signal; executing a size conversion processing for image signal of the noise reduction processing result; and executing a sharpening filter processing for image signal of the size conversion processing result; at the executing step of the noise reduction filter processing, comprising: temporarily storing an output value as the noise reduction filter processing result in a memory; calculating a difference between an input value of the image signal and the output value stored in the memory, the output value being the noise reduction filter processing result of a previous input value by one unit time; outputting a change value corresponding to the difference, the change value being a product of the difference and a value which is above xe2x80x9c0xe2x80x9d and below xe2x80x9c1xe2x80x9d if an absolute value of the difference is below a threshold; and outputting a difference between the input value and the change value, an output value as the difference being newly stored in the memory; at the executing step of the sharpening filter processing, comprising: temporarily storing an output value as a sharpening filter processing result in a memory; calculating a difference between an input value of image signal and the output value stored in the memory, the output value being the sharpening filter processing result of a previous input value by one unit time; outputting a change value corresponding to the difference, the change value being a product of the difference and a value which is above xe2x80x9cxe2x88x921xe2x80x9d and below xe2x80x9c0xe2x80x9d if an absolute value of the difference is above a threshold; and outputting a difference between the input value and the change value, an output value as the difference being newly stored in the memory.